package com.bmf.module.rbac.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.bmf.module.rbac.entity.Organization;
import com.bmf.module.rbac.vo.OrganizationCreateVo;
import com.bmf.module.rbac.vo.OrganizationResultVo;
import com.bmf.module.rbac.vo.OrganizationUpdateVo;

import java.io.Serializable;
import java.util.List;


/**
 * (Organization)表服务接口
 *
 * @author makejava
 * @since 2023-01-06 17:01:18
 */
public interface OrganizationService extends IService<Organization> {

    Integer insert(OrganizationCreateVo organizationCreateVo);

    List<OrganizationResultVo> selectAll();

    void delete(List<Integer> ids);

    void update(OrganizationUpdateVo organizationUpdateVo);

    OrganizationResultVo selectOne(Serializable id);

    List<Integer> getAllParentOrganizationIds(Integer organizationId);

    List<OrganizationResultVo> selectByOrganizationId(Integer id);

    List<Integer> getIdsByRootId(Integer organizationId);
}
